package woshiheima5;

/*需求：有一个字符串"91 27 46 38 50"，请写程序实现最终输出的结果为27 38 46 50 91*/

/*思路：（1）定义一个字符串
* （2）将字符串中的数字存到一个int类型的数组中去
* （3）然后对int数组进行排序（使用Arrays.sort()）
* (4)对排序后的int数组中的元素进行一个拼接得到一个字符串，采用stringBuilder来实现
* （5）输出结果
* */
import java.util.Arrays;

public class IntegerTest {
    public static void main(String[] args) {
        //定义一个字符串
        String s ="91 27 46 38 50";

        //把字符串的数据存储到int类型的数组中
        //regex正则表达式通过空格把上面的数分开｛“91”，“27”。。。。。｝
        String[] strArray =s.split(" ");

        //定义一个in数组，把String[]数组中的没一个元素存储到int数组中
        int[] arr = new int[strArray.length];
        for (int i=0;i<arr.length;i++){
            arr[i]=Integer.parseInt(strArray[i]);//把string数组中的元素转换为int类型的
        }
        //对int进行排序调用Arrays的sort方法对元素自动排序
        Arrays.sort(arr);

        //把排序后的int数组中的元素进行拼接得到一个字串，采用stringBuilder】
        StringBuilder stringBuilder= new StringBuilder();
        for (int i=0;i<arr.length;i++){
            if (i==arr.length-1){
                stringBuilder.append(arr[i]);
            }else {
                stringBuilder.append(arr[i]).append(" ");
            }
        }
        String result = stringBuilder.toString();
        //输出结果
        System.out.print(result);
    }
}
